// 角色工具函数

// 角色中文映射
export const getRoleDisplayName = (role: string): string => {
  const roleMap: Record<string, string> = {
    'admin': '管理员',
    'manager': '经理',
    'user': '普通用户',
    'guest': '访客'
  };
  return roleMap[role] || role;
};

// 角色颜色映射
export const getRoleColor = (role: string): string => {
  const colorMap: Record<string, string> = {
    'admin': '#ef4444',    // 红色
    'manager': '#f59e0b',  // 橙色
    'user': '#6b7280',     // 灰色
    'guest': '#9ca3af'     // 浅灰色
  };
  return colorMap[role] || '#6b7280';
};

// 角色权限等级（数字越小权限越高）
export const getRoleLevel = (role: string): number => {
  const levelMap: Record<string, number> = {
    'admin': 1,
    'manager': 2,
    'user': 3,
    'guest': 4
  };
  return levelMap[role] || 4;
};

// 检查是否有权限
export const hasPermission = (userRole: string, requiredRole: string): boolean => {
  const userLevel = getRoleLevel(userRole);
  const requiredLevel = getRoleLevel(requiredRole);
  return userLevel <= requiredLevel;
};
